﻿// STATS MODULE
//      Luca Puccini
//      Marco Cornolti
//      Michele Sottile
//      Matteo Parchi

// AS PASSENGER FEEDBACK OBJECT

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Stats.Objects
{
    /// <summary>
    /// Represents the object returned when groupware requests the userID passenger feedback
    /// </summary>
    
    public class AsPassengerFeedback
    {
        /// <summary>
        /// The user ID
        /// </summary>
        public int UserID { get; set; }

        /// <summary>
        /// Global vote for the user as passenger
        /// </summary>
        public double Vote { get; set; }

        /// <summary>
        /// Punctuality feedback value for the user as passenger
        /// </summary>
        public double Punctuality { get; set; }

        /// <summary>
        /// Reliability feedback value for the user as passenger
        /// </summary>
        public double Reliability { get; set; }

        /// <summary>
        /// Number of feedbacks left for the user as passenger
        /// </summary>
        public int FeedbacksAsPassengerCount { get; set; }

        /// <summary>
        /// Constructor for the AsPassengerFeedback object with userID, user global vote, punctuality, reliability as passenger
        /// </summary>
        /// <param name="user_id">User ID</param>
        /// <param name="psn_vote">User global vote as passenger</param>
        /// <param name="psn_punctuality">User punctuality as passenger</param>
        /// <param name="psn_reliability">User reliability as passenger</param>
        /// <param name="numFeedbacksAsPSN">Number of feedbacks left for the user as passenger</param>
        /// <example>
        /// <code>
        /// AsPassengerFeedback psnFdb = new AsPassengerFeedback("Mark81",(7.9),(8.5),(5.7),8);
        /// </code>
        /// </example> 
        public AsPassengerFeedback (int user_id, double psn_vote, double psn_punctuality, double psn_reliability, int numFeedbacksAsPSN)
        {
            UserID = user_id;
            Vote = psn_vote;
            Punctuality = psn_punctuality;
            Reliability = psn_reliability;
            FeedbacksAsPassengerCount = numFeedbacksAsPSN;
        }


        


        


        
    }
}
